cd `dirname $0`                 #进入根目录

proj_home=$PWD                  #工程根目录
img_output='my-maven-project'          #生成镜像标签
appname='my-maven-project'    #容器名称
port=8086                         #docker暴露端口

# 获得docker容器 id和镜像 id
r_c=`docker ps -a | grep "$appname" | awk '{print $1 }'`
c=`docker ps -a | grep "$appname" | awk '{print $1 }'`
r_img=`docker images | grep "$appname" | awk '{print $3 }'`
# 如果容器正在运行，停止它
if [ "x$r_c" != "x" ]; then
    docker stop "$r_c"
fi
# 删除容器
if [ "x$c" != "x" ]; then
    docker rm "$c"
fi
# 删除镜像
if [ "x$r_img" != "x" ]; then
    docker rmi "$r_img"
fi

echo 'before docker run'
docker run  --rm --name my-maven-project -v /root/.m2:/root/.m2 -v "$PWD":/usr/src/soft/mymaven -w /usr/src/soft/mymaven maven:3.6.1-jdk-8-alpine mvn clean install
echo 'stop docker run'

# 生成镜像
echo 'before docker build'
docker build -t $img_output .
echo 'stop docker build'
# 日志目录
mkdir -p $PWD/logs
chmod 777 $PWD/logs

# 启动镜像  8086为工程的端口
echo 'before docker run last'
docker run -d --name $appname -p $port:8086 $img_output
echo 'stop docker run last'